package com.geek.javase.ch18.videodemo.annotation;

/*
 *@Date 2025/11/6
 *@Author wangpeng
 *@Description
 *
 *  * Annotation 注解：
 *  * 1.相当于一种标记，在程序中加入注解就等于为程序打上某种标记，
 *  * 2.以后，javac编译器、开发工具和其他程序可以通过反射来了解你的类及各种元素上有无何种标记，看你的程序有什么标记，就去干相应的事，
 *  * 3.标记可以加在包、类，属性、方法，方法的参数以及局部变量上。
 *  *
 *  * 自定义注解
 *  * 1.如何声明？
 *  *      语法：@interface 注解名{}
 *  * 2.如何使用？
 *  *      语法：@注解名
 *  * 3.注解使用位置？
 *  *      语法：
 *  *          1.ElementType枚举，TYPE类或接口、FIELD属性、METHOD方法、PARAMETER方法形参、CONSTRUCTOR构造器等
 *  *          2.允许可以同时使用多个注解
 *  * 4.注解的典型代表：@Override、@FunctionalInterface、@Test等等
 */


@MyAnno1
public class AnnotationDemo1 {
    @MyAnno1
    private String name;

    @MyAnno2
    public void read(@MyAnno1 String name) {
    }
}

@interface MyAnno1 {
}

@interface MyAnno2 {
}


